package com.yjd.comm.borrow.service;

import java.util.List;

import com.yjd.comm.borrow.dto.BidSubmitDto;
import com.yjd.comm.borrow.dto.FullBidAuditRequest;
import com.yjd.comm.borrow.model.BorrowModel;
import com.yjd.comm.borrow.model.CreditorModel;
import com.yjd.comm.borrow.model.InvestModel;
import com.yjd.comm.borrow.model.ProfitFormModel;
import com.yjd.comm.borrow.model.RaiseInterestVolumeModel;

public interface IUseRaiseInterestVolumeClientService {
	/**
	 * 投标的时候处理加息券
	 * 
	 * @param im
	 * @param raiseInterestVolumeId
	 * @throws Exception
	 */
	public void bid(InvestModel im, Long raiseInterestVolumeId) throws Exception;

	/**
	 * 满标审核计算加息券相关信息
	 * 
	 * @param fr
	 * @throws Exception
	 */
	public void fullBidAudit(FullBidAuditRequest fr) throws Exception;

	/**
	 * 有加息券的情况下构建还款报表
	 * 
	 * @param creditorModel
	 * @param borrowModel
	 * @return
	 * @throws Exception
	 */
	public List<ProfitFormModel> buildProfitForm(CreditorModel creditorModel,
			BorrowModel borrowModel) throws Exception;
	
	/**
	 * 生成加息券
	* @param borrowModel
	* @return
	* @throws Exception
	* RaiseInterestVolumeModel
	 */
	public RaiseInterestVolumeModel generateRaiseVolume(BidSubmitDto bidSubmitDto, Integer raise_volume_type) throws Exception; 
	
	
}
